import java.io.BufferedReader;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
import java.io.Reader;

public class DateienZugriffeMagic
{
	public static void main(String[] args)
	{
		new DateienZugriffeMagic();
	}
	
	public DateienZugriffeMagic()
	{
		File f = new File("meineDatei.txt");

		try
		{
			FileWriter fw = new FileWriter(f);

			fw.write("walery \n");
			fw.flush();
			fw.append(new MeinCharSequence("foo bar"));
			fw.flush();
			
			System.out.println("Ich habe etwas reingeschreiben (angeblich)");
			
			
		} catch (FileNotFoundException e)
		{
			System.out.println("Sorry aber diese Datei ist nicht da");
		} catch (IOException e) {
			System.out.println("Sorry aber ich kann die Datei nicht lesen.");
		}
		
		
	}
	
	class MeinCharSequence implements CharSequence
	{
		private final String s;
		
		public MeinCharSequence(String s)
		{
			this.s = s;
		}
		
		@Override
		public char charAt(int index)
		{
			return this.s.charAt(index);
		}
		
		@Override
		public int length()
		{
			return this.s.length();
		}
		
		@Override
		public CharSequence subSequence(int start, int end)
		{
			return this.s.subSequence(start, end);
		}
		
		@Override
		public String toString()
		{
			return "Hast du etwa gedacht hier steht " + this.s + "? HAHAHAHAHAH!!!!!";
		}
	}
}
